home *** CD-ROM | disk | FTP | other *** search
- # -*- Fundamental -*-
- #
- # (C) Tenable Network Security
- #
- # This script is released under the terms of the Tenable License
- #
- # hpux.inc
- # $Revision: 1.1 $
- #
-
-
- #######################################################
- # hpux_check_ctx() returns : #
- # 1 if system is present in the list #
- # 0 if not #
- #######################################################
-
- function hpux_check_ctx (ctx)
- {
- local_var os, hw, list, val;
-
- os = get_kb_item ("Host/HP-UX/version");
- hw = get_kb_item ("Host/HP-UX/hardware");
-
- list = split(ctx, sep:' ', keep:0);
- foreach elem (list)
- {
- val = split (elem, sep:":", keep:0);
- if ((val[0] == hw) && (val[1] == os))
- return 1;
- }
-
- return 0;
- }
-
-
-
- function hpux_installed (app)
- {
- local_var swlist, installed_app;
-
- swlist = get_kb_item("Host/HP-UX/swlist");
-
- if ( strlen(app) )
- {
- installed_app = egrep (pattern:string(app,'[\t ]+'), string:swlist);
- if (installed_app)
- {
- return 1;
- }
- }
-
- return 0;
- }
-
-
-
- #######################################################
- # hpux_patch_installed() returns : #
- # 1 if one of the patches is installed #
- # 0 if not #
- #######################################################
-
- function hpux_patch_installed(patches)
- {
- local_var list, elem, installed_app;
-
- list = split(patches, sep:' ', keep:0);
- foreach elem (list)
- {
- if ( hpux_installed (app:elem) == 1)
- return 1;
- }
-
- return 0;
- }
-
-
-
- #######################################################
- # hpux_check_patch() returns : #
- # 1 if the patch is not installed #
- # 0 if installed or not needed #
- #######################################################
-
- function hpux_check_patch (app, version)
- {
- local_var swlist, installed_app, installed_version;
-
- swlist = get_kb_item ("Host/HP-UX/swlist");
- if ( strlen(app) )
- {
- installed_app = egrep (pattern:string(app,'[\t ]+'), string:swlist);
- if ((installed_app) && !egrep (pattern:"^#.*", string:installed_app))
- {
- if (!isnull (version))
- {
- installed_version = ereg_replace (pattern:string('[\t ]+', app, '[\t ]+(.*)'), replace:"\1", string:installed_app);
- installed_version = chomp (installed_version);
- if (installed_version >< version)
- return 1;
- }
- else
- return 1;
- }
- }
-
- return 0;
- }
-
-
-